package main

import (
	"bitcoin/src/core"
	"fmt"
)

func main() {
	bc := core.NewBlockchain() // 初始化区块，创建第一个区块（创世纪区块）

	bc.AddBlock("Send 1 BTC to Tvan") // 加入一个区块，发送一个比特币给Tvan
	bc.AddBlock("Send 2 BTC to Tvan") // 加入一个区块，发送一个比特币给Tvan

	for _, block := range bc.Blocks {
		fmt.Printf("Prev.hash: %x\n", block.PreBlockHash) // 前一个区块的哈希
		fmt.Printf("Data: %s\n", block.Data)
		fmt.Printf("Hash: %x\n", block.Hash)

		//pow := core.NewProofOfWork(block)
		//fmt.Printf("Pow:%s\n", strconv.AppendBool(pow.Validate()))

		fmt.Println()
	}

}

// Validate validates block's Pow
//func (pow *ProofOfWork) Validate() bool {
//	var hashInt big.Int
//	data := pow.prepareData(pow.block.Nonce)
//}
